/*
 * @(#)CommDAO.java $version 2012-8-9
 * 
 * Copyright 2012 NADOSTAR Gruop. All rights Reserved.
 * NADOSTAR PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */
package com.nadostar.iims.etc.dao;

import java.util.List;

import org.springframework.dao.DataAccessException;

import com.nadostar.extensions.util.DataMap;
import com.nadostar.iims.model.CommCd;
import com.nadostar.iims.model.CommCdCat;

/**
 * The Class CommDAO.
 * 
 * @author Lixing
 *
 */
public interface CommDAO {
	/**
	 * 공통코드 리스트 가져오기.
	 * 
	 * @param commCdCatCd 공통코드분류코드
	 * @param offset
	 * @param count
	 * @return 
	 * @throws DataAccessException
	 */
	List<DataMap> selectCommList(String commCdCatCd, int offset, int count) throws DataAccessException;
	/**
	 * 공통코드 리스트 총 갯수 가져오기.
	 * 
	 * @param commCdCatCd 공통코드분류코드
	 * @return
	 * @throws DataAccessException
	 */
	int selectCommListCount(String commCdCatCd) throws DataAccessException;
	/**
	 * 분류코드별 해당 공통코드 가져오기.
	 * 
	 * @param commCdCatCd 공통코드분류코드
	 * @return
	 * @throws DataAccessException
	 */
	List<DataMap> selectCommByCommCdCatList(String commCdCatCd) throws DataAccessException;
	
	/**
	 * 신규 공통코드
	 * 
	 * @param model
	 * @return
	 * @throws DataAccessException
	 */
	int insertCommCd(CommCd model) throws DataAccessException;
	/**
	 * 수정 공통코드
	 * 
	 * @param model
	 * @return
	 * @throws DataAccessException
	 */
	int updateCommCd(CommCd model) throws DataAccessException;
	/**
	 * 모든 공통코드분류코드 가져오기. 
	 * 
	 * @return
	 * @throws DataAccessException
	 */
	List<DataMap> selectAllCommCdCatList() throws DataAccessException;
	/**
	 * 신규 공통코드분류코드.
	 * 
	 * @param model
	 * @return
	 * @throws DataAccessException
	 */
	int insertCommCdCat(CommCdCat model) throws DataAccessException;
	/**
	 * 수정 공통코드부류코드.
	 * 
	 * @param model
	 * @return
	 * @throws DataAccessException
	 */
	int updateCommCdCat(CommCdCat model) throws DataAccessException;
	
}
